package org.bw.bookstore.common.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;

import javax.persistence.Entity;
import javax.persistence.Transient;
import java.io.Serializable;
import java.util.List;

/**
 *@program: wisdom_bookstore
 *@description: 订单记录实体类
 *@Author: 孙冬雪
 *@Date: 2020-10-22 09:50
 */
@Data
@ToString
@AllArgsConstructor
@NoArgsConstructor
@Entity
@TableName("tb_order_record")
public class TbOrderRecord extends BaseEntity implements Serializable {

    /**
     * orderAmount: 订单实付金额
     **/
    private Double orderPrice;

    /**
     * 订单应付金额
     *
     * @Author 孙冬雪
     * @Date 2020/10/21 15:43
     **/
    private Double orderTotalPrice;

    /**
     * 订单状态（1：已完成，2：待支付 3：已取消）
     *
     * @Author 孙冬雪
     * @Date 2020/10/21 15:43
     **/
    private Integer orderStatus;

    /**
     * 下单人
     *
     * @Author 孙冬雪
     * @Date 2020/10/21 15:40
     **/
    private String userInfoCode;

    /**
     * 一个订单记录会产生多个订单商品
     *
     * @Author 孙冬雪
     * @Date 2020/10/21 15:39
     **/
    @TableField(exist = false)
    @Transient
    private List<TbOrderGoods> tbOrderGoodsList;

    /**
     * 一个订单记录是一个用户下达的
     *
     * @Author 孙冬雪
     * @Date 2020/10/21 15:40
     **/
    @TableField(exist = false)
    @Transient
    private TbUserInfo tbUserInfo;

    /**
     * 一个订单记录产生一个支付记录
     *
     * @Author 孙冬雪
     * @Date 2020/10/21 15:47
     **/
    @TableField(exist = false)
    @Transient
    private TbPayRecord tbPayRecord;

    /**
     * 书籍名称
     *
     * @Author 孙冬雪
     * @Date 2020/10/21 15:40
     **/
    @TableField(exist = false)
    @Transient
    private String goodsName;

    /**
     * 书籍数量
     *
     * @Author 孙冬雪
     * @Date 2020/10/21 15:40
     **/
    @TableField(exist = false)
    @Transient
    private Integer buyNum;

}
